package de.tum.icuproject.persistence;

import de.tum.icuproject.model.Player;

/**
 * Interface for data layer
 * @author stefanoturchetta
 *
 */
public interface PlayerRepository {
	
	/**
	 * Returns the Player associated with the passed id
	 * @param playerId	the Player id
	 */
	public void findByPlayerId(int playerId);
	
	/**
	 * Inserts a new Player into the database
	 * @param player	the Player you want to insert
	 */
	public void insert(Player player);
	
	/**
	 * Generates an available playerId
	 */
	public void generatePlayerId();
	
	/**
	 * Updates an existing Player into the database
	 * @param player	the Player you want to update
	 */
	public void update(Player player);
	
	/**
	 * Deletes a Player from the database
	 * @param player	the Player you want to delete
	 */
	public void delete(Player player);

}
